import re
import datetime

date_1 = 'The Moscow Times — Wednesday, October 2, 2002'
date_2 = 'The Guardian — Friday, 11.10.13'
date_3 = 'Daily News — Thursday, 18 August 1977'

dates = [date_1, date_2, date_3]

# функция для преобразования в формат datetime
def check_type(date_str):
    pat_1 = '%A, %B %d, %Y'
    pat_2 = '%A, %d.%m.%y'
    pat_3 = '%A, %d %B %Y'
    
    date_str = re.sub(".*\s—\s","", date_str)

    try:
        date_str = datetime.datetime.strptime(date_str, pat_1)
    except ValueError:
        try:
            date_str = datetime.datetime.strptime(date_str, pat_2)
        except ValueError:
            date_str = datetime.datetime.strptime(date_str, pat_3)
    return date_str

for i in dates:
    print(str(check_type(i)) + " - " + str(type(check_type(i))))
